[Background]
[Installation]
[FAQs] [Status
Pages]
Background
EchoLink is a peer-to-peer system, by design.
This means that when your node is connected to another node over the
Internet, the voice and text signals are sent directly from one node
to the other, rather than going through some central server.
This helps ensure that the system is scalable and
reliable.
Unfortunately, there are certain situations in which
peer-to-peer connections such as these are difficult to
establish. A growing number of Internet providers are offering
"one-way" access to the Internet ?
allowing your computer to initiate a connection, but not to accept
one. These include wireless community networks, or
hotspots. An example is the wireless Internet service
now being provided by many hotels to their guests. Guests with
wireless-enabled laptop computers can check their e-mail and surf
the Web from their rooms. The hotel uses a router with a fast
Internet connection and a single public address (or a small pool of
addresses) shared amongst all guests. This arrangement does
not work with EchoLink, because the guests' computers are not
reachable from the Internet.
A
Solution
A solution to this problem is to split the EchoLink
software into two pieces ? one that
runs on your laptop, and the other that runs on a PC in some other
location with good Internet access. With this arrangement, the
laptop need only establish a single, outbound Internet connection to
the PC. Then, the EchoLink software on the laptop "tunnels"
all traffic through this connection to the remote PC, and the PC in
turn establishes all of the necessary peer-to-peer connections to
other EchoLink nodes. In this scenario, the PC is acting as a
proxy on behalf of the laptop.
EchoLink now offers special software to make this
possible. The proxy software, which is designed specifically
for use with EchoLink, is called EchoLink Proxy. The
diagram below illustrates how EchoLink Proxy can be used.
Is EchoLink
Proxy For You?
Consider setting up EchoLink Proxy only if
both of the following are true:
- You have a fast, true, dedicated Internet
connection at your home or office, or at some other place to which
you have access to a PC, and
- You have "one-way" Internet service at some other
location, or you often travel to such a place, such as an airport
lounge, coffee shop, or hotel room.
Note that EchoLink Proxy will not help if you
are simply having trouble connecting to other stations from your
home PC. In fact, you must first ensure that EchoLink works
correctly on the machine on which the proxy will be
installed.
Also, note that a given EchoLink Proxy can be used
by only one EchoLink client machine at a time, since each logged-in
EchoLink node (or its proxy) must still have a unique public IP
address. You can run more than one instance of EchoLink Proxy
on a PC only if the PC has multiple public Internet addresses, which
is uncommon.
Finally, the proxy PC must be reachable through a
static public Internet address, or a dynamic public address that can
easily be determined remotely.
Disadvantages
There are two key disadvantages to using EchoLink
Proxy versus the regular EchoLink software:
- Voice messages are being transferred between the
client and proxy over TCP, rather than UDP. TCP is not
designed to handle this type of data, and tends to magnify any
problems with congestion along the path.
- Two computers (and Internet connections) are
required, rather than just one. It is necessary to run the
Proxy software continuously on some remote server.
Installation Overview
Here are the overall steps for installing and using
the EchoLink Proxy. For detailed information, see the section
that follows.
- If the proxy PC runs Windows, verify that the
ordinary EchoLink software works correctly on it, and can connect
to other stations. Resolve any firewall issues.
- Be sure the PC has the Java Runtime Environment
1.4 (or above) installed.
- Download and install the Proxy software on that
PC.
- Choose a port and password for the proxy, and
edit the proxy configuration file.
- Start up the proxy software.
- If necessary, configure the router and/or
firewall to allow the PC to accept inbound TCP connections on the
proxy port (e.g. 8100).
- On the client computer (e.g. the laptop),
download and install Version 1.9 of the EchoLink software.
This version of the software has a Proxy option.
- Configure the EchoLink software to connect to the
new Proxy server. You must enter the hostname or address of
the proxy PC, the port number (e.g. 8100), and the chosen
password.
- When the EchoLink software starts, it will try to
connect to the Proxy PC. If successful, the program will
look and act exactly as it normally does. When you exit
EchoLink, it automatically disconnects from the Proxy
server.
Installation
Details
The EchoLink Proxy software can run on any OS that
supports Java, such as Windows, MacOS, Linux, Solaris, or
FreeBSD.
To verify whether the Java Runtime Environment is
installed, and what version it is, type this command at a command
prompt:
java -version
If the command fails, or returns a version lower
than 1.4, you will need to download and install the latest Java
Runtime Environment (JRE). Follow the instructions
at:
http://www.java.com/
Download the EchoLink Proxy software. The
download is a ZIP archive that contains two files. The
software is in a file called EchoLinkProxy.jar, and the sample
configuration file is EchoLinkProxy.conf. Copy both of
these files to some convenient directory or folder on the
PC.
Choose a password and a port number for the EchoLink
Proxy. The default port number is 8100. The port number
you choose must be a TCP port that your home ISP allows for incoming
connections, and that the remote ISP allows for outgoing
connections. If you are using security software on your home
PC, you might need to configure it to allow java.exe to accept
connections on this port. Also, if you have a home-networking
router, you will need to configure it to "forward" incoming
connections on this TCP port to the PC on which EchoLink Proxy will
be running.
Using a text editor such as Windows Notepad, edit
EchoLinkProxy.conf to reflect your
choices.
You must also ensure that the proxy PC can accept
UDP ports 5198 and 5199, and outbound TCP port 5200. See Firewall
Solutions for details.
To start the EchoLink Proxy software, open a command
prompt, change to the directory or folder that contains
EchoLinkProxy.jar, and type this command:
java -jar
EchoLinkProxy.jar
When the program starts, it will display the message
"Ready for new client connection." Leave the command-prompt
window open to allow the program to keep running.
On the remote PC (e.g., the laptop), download and
install version 1.9 (or above) of the EchoLink software. Start
up EchoLink as usual, but go to Tools-->Setup, and click the
Servers tab. Check the box marked "Use proxy", and enter the
hostname (or IP address) of the proxy PC, along with the chosen
password and port number. Note that the hostname (or IP
address) must be the external address of the proxy PC, not
the internal address. Click OK and then re-start
EchoLink for the changes to take effect.
After re-starting EchoLink, if it displays a message
about problems connecting to the proxy, verify that the host name is
correct and that no firewall or router issues are interfering with
the TCP connection between EchoLink and the proxy. (This
connection uses only the single TCP port you
selected.)
If the list of stations appears as usual, but you
are unable to connect to other stations, check the firewall/router
setup on the proxy PC. In effect, the proxy PC is the PC from
which EchoLink connections are established, so all of the
information on the Firewall
Solutions page applies to the proxy PC.
To shut down the proxy, switch to its window and hit
Ctrl+C.
Frequently Asked Questions
Q: What version of the EchoLink software will
work with EchoLink Proxy?
A: Version 1.9 or above. The new
proxy settings appear on the Servers tab under
Tools-->Setup.
Q: I have dial-up Internet access at home,
rather than broadband. Can I still use EchoLink
Proxy?
A: It might work, but it's not
recommended. EchoLink Proxy uses more Internet bandwidth
than EchoLink itself requires, which might be more than your
dial-up connection can reliably provide. Also, a dial-up
Internet address usually changes each time the line is
re-connected, making it more difficult for you to establish a
connection to it from a remote PC.
Q: What about the remote computer (the one
running EchoLink)? Can it connect to EchoLink Proxy over a
dial-up connection?
A: Yes, but since it uses the TCP protocol
to communicate with the proxy, packet loss might be more
noticeable. However, the proxy is rarely necessary in this
situation since most dial-up accounts provide full Internet access
? you're better off using EchoLink directly.
Q: I have a home network with a PC and a
laptop, and I've been having trouble getting EchoLink to work on the
laptop. Will this Proxy thing help?
A: It might, but you are probably better
off troubleshooting the laptop problem, since the proxy has
certain disadvantages compared to a direct EchoLink
connection.
Q: I have broadband Internet access, but my
computer's public IP address changes from time to time. How
will I know what its address is when I am 1,000 miles
away?
A: There are two solutions (choose one or
the other):
- Subscribe to a "dynamic DNS" service such as DNS2Go. With the help of
special software installed on the PC, your PC will be assigned a
fixed hostname, even though its IP address may change from time
to time.
- Enable the RegistrationName feature in the
proxy configuration file. This will cause the proxy to
periodically post a message to the EchoLink server advising it
of your current IP address. You can then find out the IP
address from a special web page,
which you can bring up each time you need to connect to the
proxy.
Q: I run a full-time EchoLink Sysop node at
home, on my broadband Internet connection. Can I also run the
EchoLink Proxy software at home, either on the same computer, or on
a different one?
A: Probably not. The reason is that
each EchoLink node (including the proxy) must have a different
public IP address; on most home networks, a single public Internet
address is shared by all computers on the network. You can
do this only if you have made special arrangements with your ISP
to have multiple public Internet addresses.
Q: If I use EchoLink (via the proxy) from a
public "hotspot", such as an airport lounge, is there a security
risk since others might "sniff" the information going to and from my
laptop?
A: This is an important issue that is often
overlooked by users of wireless networks. EchoLink (version
1.8 and above) uses public-key cryptography to encrypt your login
information, and EchoLink Proxy uses a challenge-response
digest-based authentication mechanism. Passwords are never
sent "in the clear". These features help ensure security
over a shared public network.
Q: I've tried using the Proxy and it seems to
work, except that I can't connect to any other stations. What
is the problem?
A: Most likely, it's a firewall or router
problem at the proxy PC (not the EchoLink PC). See Firewall
Solutions for assistance.
Q: If my Internet connection is dropped while
I'm using the proxy, can I re-connect?
A: In most cases, EchoLink Proxy will
detect the dropped connection and re-set itself right away.
In other cases, it may take up to 10 minutes for the proxy to
re-set itself and prepare for a new
connection.
Q: Can more than one EchoLink user work
through my proxy at the same time?
A: No; each instance of the proxy supports
only one client at a time. This is because each logged-on
EchoLink user must have a different public IP address.
However, two (or more) users can take turns using your proxy at
different times.
Q: When connected through the proxy, will
EchoLink support conferencing?
A: Yes, but it is less efficient, since the
EchoLink client is hosting the conference, not the proxy.
When calculating the maximum number of connections you can
support, you must consider both the proxy's upstream
Internet connection and the EchoLink client's upstream Internet
connection, and use the lesser of the two; divide the result (in
kbps) by 18. Also, keep in mind that the proxy uses equal
amounts of upstream and downstream
bandwidth.
Q: Can I set up an EchoLink Proxy for others
to use, besides myself?
A: Yes, but you must agree not to charge a
fee for access to it. Note that the
Proxy configuration file allows you to set an accept/deny list of
callsigns if you want to restrict access to a specific group of
users.
In fact, there is an option in the Proxy
configuration file that allows you to "advertise" the server as a
"public" proxy, and have it automatically be listed on a special page on
the EchoLink Web site.
Q: Instead of setting up and running my own
EchoLink Proxy, can I simply connect to someone else's?
A: Yes, but you would need to know the
address and password of the proxy, and you would need the owner's
permission to use it; or, use a "public" proxy (see list).
If you decide to use a public proxy, please be considerate; it is
a shared resource, and should be used only for brief time
periods. If you have a need for long-term access to a proxy,
please make arrangements to set up a private proxy for
yourself.
Q: I have a home network with two computers
that share a DSL connection to the Internet. I run a full-time
EchoLink Sysop node on one of them. Can I run another copy of
EchoLink on the second computer by pointing it to a proxy at some
other location?
A: Yes; this will work, because your Sysop
node and the distant proxy server would have two different IP
addresses. However, please be considerate about the use of
"public" proxies; use them only for short periods. If you
require long-term access to a proxy, please make arrangements to
use a private proxy, or set one up yourself at some other site
that has Internet access.
Q: With EchoLink Proxy, will I be able to run
EchoLink on a computer on a private network that has no gateway to
the Internet at all?
A: The proxy arrangement still requires
that the EchoLink client software perform DNS lookups for certain
Internet hosts (namely, the addressing servers). If you run
the EchoLink client software on a private network and connect
through a proxy as the gateway, you would also need a caching DNS
resolver accessible from the EchoLink
client.
Q: Is there any way to use EchoLink Proxy
with an EchoLink client that is behind an HTTP proxy?
A: Yes, as long as the HTTP proxy supports
"tunneling" via the CONNECT command, and the EchoLink Proxy is
running on a port to which the HTTP proxy allows tunneled
connections, such as 443. It also requires that the HTTP
proxy's inactivity timer be no shorter than 6 minutes, or that the
EchoLink client remain connected to another station at all
times. To use this feature, put a slash after the EchoLink
Proxy hostname, and then the IP address and port number of the
HTTP proxy, separated by a colon.
Q: On a Windows computer, how can I set
up the proxy so that it starts automatically each time Windows is
re-started?
A: On Windows NT/2000 or above, you can set
up the proxy to run as a Windows Service, using a freeware utility
called JavaService (www.multiplan.co.uk/software/javaservice/downloads.html).
Assuming you have put EchoLinkProxy in C:\EchoLinkProxy, and you
are running the Sun 1.4.2 JRE, a typical command to install the
service might be (all on one line):
javaservice -install
"EchoLinkProxy" "C:\Program
Files\Java\j2re1.4.2\bin\client\jvm.dll"
-Djava.class.path=C:\EchoLinkProxy\EchoLinkProxy.jar
-start org.echolink.proxy.ELProxy -out
C:\EchoLinkProxy\stdout.txt -current
c:\EchoLinkProxy
Status
Pages
List of Public
EchoLink Proxies
This page displays the address and current status of
each EchoLink Proxy Server that welcomes access from any EchoLink
user.
EchoLink Proxy
Lookup
Looks up the current Internet address of any proxy
server (public or private) that has registered itself using the
RegistrationName option. See the comments in the EchoLink
Proxy configuration file for
details. |